package com.drug.mingkang.controller;

import com.alibaba.druid.util.StringUtils;
import com.drug.mingkang.model.HqDrugtype;

import com.drug.mingkang.service.HqDrugtypeService;
import com.drug.mingkang.utils.ResponseMessage;
import com.drug.mingkang.utils.Tools;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 药品类型(HqDrugtype)表控制层
 *
 * @author Dragons Teng Tigers
 * @since 2020-08-11 12:00:12
 */
@RestController
@RequestMapping("hqDrugtype")
public class HqDrugtypeController {
    /**
     * 服务对象
     */
    @Resource
    private HqDrugtypeService hqDrugtypeService;

    /**
     * 通过主键查询单条数据
     */
    @GetMapping("selectOne")
    public HqDrugtype selectOne(String typeId) {

        return this.hqDrugtypeService.queryById(typeId);
    }


    @RequestMapping("findAll")
    @ResponseBody
    public Map<String,Object> findAll(int page , int limit , String typeName, String filterRules, String sort){
        HqDrugtype hqDrugtype=new HqDrugtype();
        hqDrugtype.setTypeName(typeName);
        List<HqDrugtype> list = hqDrugtypeService.queryAllByLimit(hqDrugtype);
        System.out.println(list);
        int count = hqDrugtypeService.selectCount(hqDrugtype);
        Tools tools = new Tools();
        return tools.limit(list,count);
    }


    @RequestMapping("findAlls")
    @ResponseBody
    public List<HqDrugtype> findAlls(){
        List<HqDrugtype> list = hqDrugtypeService.queryAllByLimits();
        return list;
    }


    @RequestMapping("deleteById")
    @ResponseBody
    public ResponseMessage deleteByid(String typeId){
        int rows= hqDrugtypeService.deleteById(typeId);
        ResponseMessage bms=new ResponseMessage();
        if(rows > 0){
            bms.setMessage("删除成功");
            bms.setStatus(1);
        }else{
            bms.setMessage("删除失败");
            bms.setStatus(0);
        }
        return bms;
    };

    @RequestMapping("addORupdate")
    @ResponseBody
    public ResponseMessage insertORupdate(HqDrugtype hqDrugtype){

        int rows= 0;
        ResponseMessage bms=new ResponseMessage();
        if(StringUtils.isEmpty(hqDrugtype.getTypeId())){


            rows = hqDrugtypeService.insert(hqDrugtype);

        }else{
            rows = hqDrugtypeService.update(hqDrugtype);
        }
        bms.setStatus(rows);
        bms.setMessage(rows > 0 ? "保存成功" : "保存失败");
        return bms;
    };


    @GetMapping("fqueryAll")
    public List<HqDrugtype> fqueryAll(){
        List<HqDrugtype> list = hqDrugtypeService.fqueryAll();
        return list;
    }
}